<?php
require_once dirname(__FILE__) . '/InterfaceBase.php';
class DividendInterface extends InterfaceBase implements IService
{
    public function __construct ($env = self::APP_ENV_TEST)
    {
        parent::__construct($env);
        $this->loadSdk("SDOServiceDividend");
    }
    /**
     * 开通分红服务
     * @param array $args array(
     * appId=>应用ID,
	 * spId=>商户ID
	 * sp=>array(spName => 公司名称, spAddr => 公司地址, spIntroduce => 产品说明(选填), 
	 * spPhone => 公司电话, spMobile => 公司手机(可为空),  spUser => 负责人姓名, spEMail => 邮箱)
	 * )
     * @param int $env 环境变量
     * @return boolean
     */
    public function open ($args, $env = null)
    {
        if (! $env) {
            $env = $this->env;
        }
        $msg = '';
        /*if (SDOServiceDividend::searchApp($msg, $args['appId'], self::$ENVType[$env])) {
            $message = $this->getErrMsg(-20002001, "APP EXISTS");
        	return true;
        }*/
        $sdkEnv = self::$ENVType[$env];
        $appId = $args['appId'];
        $spId = $args['spId'];
        $spInfo = $args['sp'];
        $spInfo['appId'] = $appId;
        $spInfo['spId'] = $spId;
        if (! SDOServiceDividend::SetIGWConfig($msg, $spInfo, $sdkEnv, SDOServiceDividend::OPERATION_OPEN)) {
            $this->setError(SDOServiceDividend::getErrNo(), $msg);
            return false;
        }
        return true;
    }
    /**
     * 关闭分红服务
     * @param array $args array(
     * appId=>应用ID,
	 * spId=>商户ID
	 * sp=>array(spName => 公司名称, spAddr => 公司地址, spIntroduce => 产品说明(选填), 
	 * spPhone => 公司电话, spMobile => 公司手机(可为空),  spUser => 负责人姓名, spEMail => 邮箱)
	 * )
     * @param int $env 环境变量
     * @return boolean
     */
    public function close ($args, $env = null)
    {
        if (! $env) {
            $env = $this->env;
        }
        $msg = '';
        $sdkEnv = self::$ENVType[$env];
        $appId = $args['appId'];
        $spId = $args['spId'];
        $spInfo = $args['sp'];
        $spInfo['appId'] = $appId;
        $spInfo['spId'] = $spId;
        if (! SDOServiceDividend::SetIGWConfig($msg, $spInfo, $sdkEnv, SDOServiceDividend::OPERATION_CLOSE)) {
            $this->setError(SDOServiceDividend::getErrNo(), $msg);
            return false;
        }
        return true;
    }
    /**
     * 更新分红服务
     * @param array $message array("errNo"=>错误码, "errMsg"=>错误信息)
     * @param array $args array(
     * appId=>应用ID,
	 * spId=>商户ID
	 * sp=>array(spName => 公司名称, spAddr => 公司地址, spIntroduce => 产品说明(选填), 
	 * spPhone => 公司电话, spMobile => 公司手机(可为空),  spUser => 负责人姓名, spEMail => 邮箱)
     * )
     * @param int $env 环境变量
     * @return boolean
     */
    public function update ($args, $env = null)
    {
        if (! $env) {
            $env = $this->env;
        }
        $msg = '';
        /*if (SDOServiceDividend::searchApp($msg, $args['appId'], self::$ENVType[$env])) {
            $message = $this->getErrMsg(-20002001, "APP EXISTS");
        	return true;
        }*/
        $sdkEnv = self::$ENVType[$env];
        $appId = $args['appId'];
        $spId = $args['spId'];
        $spInfo = $args['sp'];
        $spInfo['appId'] = $appId;
        $spInfo['spId'] = $spId;
        if (! SDOServiceDividend::SetIGWConfig($msg, $spInfo, $sdkEnv, SDOServiceDividend::OPERATION_OPEN)) {
            $this->setError(SDOServiceDividend::getErrNo(), $msg);
            return false;
        }
        return true;
    }
    public function get ($args, $env = null)
    {}
    /**
     * 
     * @param array $message
     * @param array $args array(
     * 'appId'=>应用ID
     * )
     * @param mixed $env
     */
    public function sync ($args, $env = null)
    {
        if (! $env) {
            $env = $this->env;
        }
        $msg = '';
        $sdkEnv = self::$ENVType[$env];
        $appId = $args['appId'];
        return true;
    }
}